1. Field of Present Invention
Embodiments of the present invention relate, in general, to networking. More specifically, the embodiments of the present invention relate to methods and systems for redundancy suppression in data transmission over networks.
2. Description of the Background Art
In a typical network, different users often repetitively access Data Processing Units (DPUs) for data. Examples of these DPUs include computers, servers, mobile phones, and network devices. When the DPUs are accessed for the same data, this data is repetitively transmitted over the network. The repetitive transmission of the same data reduces the available bandwidth of the network. This, in turn, slows down the network's response time and affects the timely transmission of other important data. Therefore, to minimize network loading, caching often-requested data saves considerable bandwidth for transmitting other important data.
According to conventional methods, proprietary schemes are used to suppress the transmission of redundant data. Central to these schemes are data caches at the DPUs. A data cache is used to store redundant data that is transmitted repeatedly across a network. Transmitting redundant data across the network can be prevented by sending pointers to the redundant data stored in a data cache. When the data cache is full, the data cache is flushed to make room for new data. Therefore, any redundant data that is required after it has been flushed cannot be recalled from the data cache. Further, this redundant data is required to be re-transmitted across the network. Consequently, a large cache size leads to the better suppression of transmission of the redundant data. However, a large cache increases costs and may overload the processor associated with the DPU. Further, a large cache must typically be implemented on disk storage, which increases latency, thereby, making it unsuitable for high speed devices. Although the data caches implement cache replacement, they do not implement an efficient redundancy-suppressing admission policy. So they also admit non-redundant data into the data cache without scrutiny, which leads to a low utilization of the data cache and an increased processor overhead.